home *** CD-ROM | disk | FTP | other *** search
-
- GNU EGREP
-
- Be warned, this program has known bugs. I consider it useful as is but
- see "PROBLEMS" below. It is probably of interest mostly to programmers
- or people who are familiar with egrep on UNIX systems. This program
- is NOT public domain. See "FSF COPYLEFT" below. Do not contact the
- Free Software Foundation concerning Mac egrep. I understand that they
- are boycotting Apple because of its stupid, offensive, and destructive
- position on software intellectual property rights. If you have a
- purchasing alternative to Apple, take it. That's my opinion anyway.
-
- WHAT IS EGREP?
- ---- -- ------
-
- Egrep is used to search for patterns (defined by regular expressions)
- in one or more files. By default, lines that contain a match for the
- pattern are printed. Click on help for assistance on regular expression
- syntax. Features of this egrep include the following.
-
- Ñ Very complete regular expression syntax.
- Ñ Lightning fast. (That's why I ported it.)
- Ñ File name globbing (within one folder).
- Ñ Ability to save results to a file.
-
- As an example, suppose you want to find the Apple .h files that contain
- the string "opendriver". Use "opendriver" (without the quotes) as the
- regular expression, and use "*.h" (without the quotes) as the file name
- pattern. Click on Pick folder to select the folder that contains the
- .h's. Then, click on search.
-
- UNIX users should be aware that there is no need to put the regular
- expression in single quotes. Despite file globbing in the file
- pattern, there is no shell to mess with charactars like '\'. For
- example, to search for an open paren, use regular expression "\("
- (but without the quotes).
-
- See the manual file or the UNIX README for more clues.
-
- PROBLEMS
- --------
-
- I hesitated to make this program available since it is not really
- finished. However, I decided not to work on it any longer and thought
- it might be useful to somebody. Despite a number of bugs, I find it
- useful as is. It is quite fast-- over 30 times faster than the grepper
- I used to use. I guess my real hope is that someone with some spare
- time will pick it up and improve it.
-
- My original intent was to test Think C by determining how hard it would
- be to compile egrep. It was not very hard. I added the simple Mac
- interface as an afterthought and without much planning. It's a bit
- of a mess. One problem is that egrep was not meant to be "restarted."
- On UNIX, you run one pattern, and egrep exits. This is alien to the
- Mac way of doing things. I made some small changes to make egrep
- restartable, but I believe there are memory leaks.
-
- Here are some known problems. I am sure there are more.
-
- Ñ Default button (search) not outlined.
-
- Ñ Will search non-TEXT files. (Is this a bug or a feature?)
-
- Ñ The method for stopping on command-period is really hoaky. It
- pretends to be out of input. Sometimes, you have to hold down
- command-period for a long time to get it to stop.
-
- Ñ Should not force quit after a regexp parse error.
-
- Ñ "Just one" file not implemented. It's supposed to prompt the user
- via SFGetFile for a file to search.
-
- Ñ File names are case sensitive.
-
- Ñ Ignore case does not work right. You can set it ONCE before the first
- search. After that, leave it alone.
-
- Ñ Needs HFS but does not check for it.
-
- It was built with Think C 5.0.1. It uses the 4 byte int option so
- the UNIX and ANSI libraries must be recompiled.
-
- FSF COPYLEFT
- --- --------
-
- Copyright (C) 1988 Free Software Foundation, Inc.
- Written June, 1988 by Mike Haertel
- BMG speedups added July, 1988
- by James A. Woods and Arthur David Olson
-
- NO WARRANTY
-
- BECAUSE THIS PROGRAM IS LICENSED FREE OF CHARGE, WE PROVIDE ABSOLUTELY
- NO WARRANTY, TO THE EXTENT PERMITTED BY APPLICABLE STATE LAW. EXCEPT
- WHEN OTHERWISE STATED IN WRITING, FREE SOFTWARE FOUNDATION, INC,
- RICHARD M. STALLMAN AND/OR OTHER PARTIES PROVIDE THIS PROGRAM "AS IS"
- WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING,
- BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND
- FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY
- AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE PROGRAM PROVE
- DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR
- CORRECTION.
-
- IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW WILL RICHARD M.
- STALLMAN, THE FREE SOFTWARE FOUNDATION, INC., AND/OR ANY OTHER PARTY
- WHO MAY MODIFY AND REDISTRIBUTE THIS PROGRAM AS PERMITTED BELOW, BE
- LIABLE TO YOU FOR DAMAGES, INCLUDING ANY LOST PROFITS, LOST MONIES, OR
- OTHER SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE
- USE OR INABILITY TO USE (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR
- DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY THIRD PARTIES OR
- A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS) THIS
- PROGRAM, EVEN IF YOU HAVE BEEN ADVISED OF THE POSSIBILITY OF SUCH
- DAMAGES, OR FOR ANY CLAIM BY ANY OTHER PARTY.
-
- GENERAL PUBLIC LICENSE TO COPY
-
- 1. You may copy and distribute verbatim copies of this source file
- as you receive it, in any medium, provided that you conspicuously and
- appropriately publish on each copy a valid copyright notice "Copyright
- (C) 1988 Free Software Foundation, Inc."; and include following the
- copyright notice a verbatim copy of the above disclaimer of warranty
- and of this License. You may charge a distribution fee for the
- physical act of transferring a copy.
-
- 2. You may modify your copy or copies of this source file or
- any portion of it, and copy and distribute such modifications under
- the terms of Paragraph 1 above, provided that you also do the following:
-
- a) cause the modified files to carry prominent notices stating
- that you changed the files and the date of any change; and
-
- b) cause the whole of any work that you distribute or publish,
- that in whole or in part contains or is a derivative of this
- program or any part thereof, to be licensed at no charge to all
- third parties on terms identical to those contained in this
- License Agreement (except that you may choose to grant more extensive
- warranty protection to some or all third parties, at your option).
-
- c) You may charge a distribution fee for the physical act of
- transferring a copy, and you may at your option offer warranty
- protection in exchange for a fee.
-
- Mere aggregation of another unrelated program with this program (or its
- derivative) on a volume of a storage or distribution medium does not bring
- the other program under the scope of these terms.
-
- 3. You may copy and distribute this program or any portion of it in
- compiled, executable or object code form under the terms of Paragraphs
- 1 and 2 above provided that you do the following:
-
- a) accompany it with the complete corresponding machine-readable
- source code, which must be distributed under the terms of
- Paragraphs 1 and 2 above; or,
-
- b) accompany it with a written offer, valid for at least three
- years, to give any third party free (except for a nominal
- shipping charge) a complete machine-readable copy of the
- corresponding source code, to be distributed under the terms of
- Paragraphs 1 and 2 above; or,
-
- c) accompany it with the information you received as to where the
- corresponding source code may be obtained. (This alternative is
- allowed only for noncommercial distribution and only if you
- received the program in object code or executable form alone.)
-
- For an executable file, complete source code means all the source code for
- all modules it contains; but, as a special exception, it need not include
- source code for modules which are standard libraries that accompany the
- operating system on which the executable file runs.
-
- 4. You may not copy, sublicense, distribute or transfer this program
- except as expressly provided under this License Agreement. Any attempt
- otherwise to copy, sublicense, distribute or transfer this program is void and
- your rights to use the program under this License agreement shall be
- automatically terminated. However, parties who have received computer
- software programs from you with this License Agreement will not have
- their licenses terminated so long as such parties remain in full compliance.
-
- 5. If you wish to incorporate parts of this program into other free
- programs whose distribution conditions are different, write to the Free
- Software Foundation at 675 Mass Ave, Cambridge, MA 02139. We have not yet
- worked out a simple rule that can be stated here, but we will often permit
- this. We will be guided by the two goals of preserving the free status of
- all derivatives our free software and of promoting the sharing and reuse of
- software.
-
-
- In other words, you are welcome to use, share and improve this program.
- You are forbidden to forbid anyone else to use, share and improve
- what you give them. Help stamp out software-hoarding!
-